$spinner_size: 24px;
@mixin spinner() {
  .esri-spinner {
    background-color: transparent;
    box-shadow: none;
    padding: 0;
    overflow: visible;
    width: $spinner_size;
    height: $spinner_size;
    position: absolute;
    left: -999em;
    top: -999em;
    z-index: 2;
    pointer-events: none;
    display: none;
    opacity: 0;
    transform-origin: 0 0;
  }
  .esri-spinner::before {
    position: absolute;
    margin: -50% 0 0 -50%;
    width: 100%;
    height: 100%;
    background: url("../base/images/Loading_Indicator_double_32.svg") no-repeat center;
    display: block;
    content: '';
    animation: esri-spinner--rotate-animation 750ms linear infinite;
  }
  .esri-spinner--start {
    display: block;
    animation: esri-spinner--start-animation 250ms cubic-bezier(.17, .67, .36, .99) forwards;
  }
  .esri-spinner--finish {
    display: block;
    opacity: 1;
    animation: esri-spinner--finish-animation 125ms ease-in forwards;
    animation-delay: 75ms;
  }
}

@keyframes esri-spinner--start-animation {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes esri-spinner--finish-animation {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(0);
  }
}

@keyframes esri-spinner--rotate-animation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@if $include_Spinner == true {
  @include spinner();
}

